function Person(name, age) {
    var n = 1
    console.log(this)
    this.name = name
    this.age = age+n
    
   
}
var person1 = new Person('小明', 10)
// var person2=new Person('校花',30)
console.log(person1)
// console.log(person1.n) // undefined调用一个没有的属性，也不会报错
// console.log(person1.age) //11 10+1=11
// console.log(person2.age) //31 30+1=31

/**
 * 在构造函数执行形成的作用域中创建一个空对象（空的堆内存var obj={}）
 * 函数的执行主体this指向这个空对象（this===obj）
 * 给这个空对象动态加属性和赋值 (obj.name=name obj.age=age)
 * 自动返回这个空对象（已经有值）给外部实例接收（return obj）。
 *
 */